This invention relates generally to information systems and more particularly to a computing system having a scalable architecture that is capable of managing dynamic communities.
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawings hereto: Copyright (copyright) 1998, 1999 Microsoft Corporation. All Rights Reserved.
The Internet is a worldwide collection of networks that span over 100 countries and connect millions of computers. As of 1998, the Internet had more than 100 million users worldwide and that number continues to grow rapidly. The Internet has quickly become a vital means of communication, collaboration, news, learning, commerce and entertainment.
The quickness and easy access to communication technology available to the growing number of Internet users is fostering the growth of online communities. A community is a virtual association of users. A community can comprise as little as a few users or as many as thousands of users or more. Communities commonly form around areas of similar interest. For example, communities form around topics such as sports, hobbies, pets, and technology to name a few. Common examples of the communication technology used to support communities include electronic newsletters, discussion-group mailing lists, news groups and chat rooms.
As the number of Internet users grows, the need for a scalable system to manage dynamic communities grows. Also, as profiles of Internet users become more diverse, the desire of Internet users to customize community features grows. For these and other reasons, there is a need for a scalable computing system for managing dynamic communities.
A scalable computing system for managing dynamic communities stores and provides access to community and member information. A community is a dynamic and virtual association of users. The scalable architecture of the computing system for managing dynamic communities provides a computing system capable of handling the increasing number of community members and the community elements associated with the community.
Example elements of a community include: a home page, membership, non-real time based messaging (threaded messages), chats, community calendar, annotations, and management tools for access control and the like. The computing system performs authentication of community members and access control to community information. The computing system also performs community management functions including adding, deleting, and modifying community properties. The computing system also controls user navigation and participation including browsing, reading and writing of content by users. The computing system for managing dynamic communities stores community elements and dynamically generates a page containing the requested community elements when a request for such is received.